"use strict";

/**
 * 日期格式转换
 * @param fmt
 * @returns {*}
 */
Date.prototype.format = function (fmt) {
    var weekday = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
    var o = {
        "M+": this.getMonth() + 1,                 //月份
        "d+": this.getDate(),                    //日
        "w+": weekday[this.getDay()],                    //日
        "h+": this.getHours(),                   //小时
        "m+": this.getMinutes(),                 //分
        "s+": this.getSeconds(),                 //秒
        "q+": Math.floor((this.getMonth() + 3) / 3), //季度
        "S": this.getMilliseconds()             //毫秒
    };
    if (/(y+)/.test(fmt)) {
        fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    }
    for (var k in o) {
        if (new RegExp("(" + k + ")").test(fmt)) {
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
        }
    }
    return fmt;
};

/**
 * 绘制图表
 * @param domId
 * @param option
 * @param click
 */
function eChart_draw(domId, option, click) {
    var dom = document.getElementById(domId);
    var myChart = echarts.init(dom);
    $(dom).resize(function () { //容器大小变化时，表重新自适应 ，$("selector").resize()依赖jquery和jqResize.js
        myChart.resize();
    });
    myChart.setOption(option, true);

    if (click) { //点击事件
        myChart.on('click', function (param) {
            click(param);
        });
    }
}

/**
 * 封装jquery的ajax，公用错误提示信息，加载loading
 * @param options
 */
function iAjax(options) {
    // console.log(options);
    var layerLoading;
    $.ajax({
        url: options.url,
        type: options.type,
        data: options.data,
        contentType: options.contentType,
        dataType: options.dataType,
        success: function (ret) {
            // console.log(ret);
            options.success(ret);
        },
        error: function (err) {
            // console.log(err);
            if (options.error) {
                options.error(err);
            } else {
                layer.alert("未知的错误发生了", {icon: 5, closeBtn: 0, btnAlign: 'c'}, function (index) {
                    layer.close(index);
                });
            }
        },
        beforeSend: function (xhr) {
            if (!options.noLoading) {
                layerLoading = layer.load(0, {shade: 0.1});
            }

        },
        complete: function (xhr) {
            if (!options.noLoading) {
                layer.close(layerLoading);
            }

        }
    });
}
